package com.kratos.designdemo.entity;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 订单
 *
 * @Author kratos
 * @Date 2022/6/9
 **/
@Data
//@TableName("od_order")
public class Order {

    //@TableId(type = IdType.INPUT)
    private Long id;

    // 支付单号，传支付渠道的，可以多订单合并支付
    private Long orderTradeId;

    // 支付流水号，与支付单号一一对应
    private Long flowId;

    // 下单用户
    private String userId;

    // 下单用户名
    private String userName;

    // 支付渠道用户标识
    private String userOpenId;

    // 买家，B2B订单需要企业信息
    private String buyerId;

    // 买家名称
    private String buyerName;

    // 卖家，按照卖家拆单
    private String sellerId;

    // 卖家名称
    private String sellerName;

    // 订单金额
    private BigDecimal amount;

    // 订单应付金额
    private BigDecimal dealAmount;

    // 运费
    private BigDecimal freight;

    // 优惠金额
    private BigDecimal discount;

    // 订单支付金额
    private BigDecimal payAmount;

    // 支付渠道
    private Integer payChannel;

    // 支付方式
    private Integer payWay;

    // 订单支付状态
    private Integer payStatus;

    // 订单状态
    private Integer status;

    // 隶属渠道平台
    private String platformCode;

    // 订单类型
    private Integer orderType;

    // 下单时间
    private LocalDateTime createTime;

    // 支付时间
    private LocalDateTime payTime;

    // 支付过期时间
    private LocalDateTime payExpireTime;

    // 下单场景
    private String orderScene;

    // 支付场景
    private String payScene;

    // 退款金额
    private BigDecimal refundAmount;

    // 订单备注
    private String remark;
}
